package com.hy.study.schedule;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;

/**
 * 定时任务
 *
 * @author huyong
 * @date 2024 年 01 月 08 日 11:23: 45
 */
@Configuration
@EnableScheduling// 开启定时任务
@Slf4j
public class ScheduleConfig {

    @Scheduled(cron = "0 0/1 * * * ?")
    @Async
    public void job() {
        log.info("定时任务运行了");
    }

    @Async
    @Scheduled(fixedRate = 60000)// 上一次开始执行时间点之后6秒再执行
    public void job1() {
        log.info("上一次开始执行时间点之后6秒再执行");
    }

    @Async
    @Scheduled(fixedDelay = 60000)// 上一次执行完毕时间点之后6秒再执行
    public void job2() {
        log.info("上一次执行完毕时间点之后6秒再执行");
    }
}
